package 代码记录.指定公司代码练习记录.华为_2024.分值100.第36start;

import java.util.Arrays;
import java.util.Scanner;

/**
 * @author zx
 * @create 2024-02-16 13:16
 * 看人家的代码，这道题人家的思路做出来不难理解
 */
public class CPU算力分配_63 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int L1 = sc.nextInt();
        int L2 = sc.nextInt();
        int[] A = new int[L1];
        int[] B = new int[L2];
        for (int i = 0; i < L1; i++) {
            A[i] = sc.nextInt();
        }
        for (int i = 0; i < L2; i++) {
            B[i] = sc.nextInt();
        }
        // 计算两组服务器的初始总算力
        int sumA = Arrays.stream(A).sum();
        int sumB = Arrays.stream(B).sum();
        // 计算差值
        int diff = (sumA - sumB) / 2;
        // 遍历A组的每个CPU，看是否有一个CPU的算力可以用于交换
        for (int aCpu : A) {
            // 计算B组中需要交换的目标算力值
            int targetCpu = aCpu - diff;
            if (Arrays.binarySearch(B, targetCpu) >= 0) {
                // 找到合适的交换组合，输出结果
                System.out.println(aCpu + " " + targetCpu);
                return;
            }
        }
    }
}
